package com.oig.sys.msg.service;

import com.oig.sys.msg.dto.TaskDto;
import com.oig.sys.msg.vo.TaskVo;

/**
 * @author wuxl
 */
public interface ITbTaskService {

	/**
	 * add
	 */
	TaskVo addTask(TaskDto taskDto);

	/**
	 * update
	 */
	TaskVo updateTask(TaskDto taskDto);

	/**
	 * delete
	 */
	void deleteTask(Integer id);

	TaskVo getTaskMainInfo(Integer id);
	/**
	 * info
	 */
	TaskVo getTask(Integer id);

	/**
	 * update
	 */
	void startTask(TaskDto taskDto);

	void finishTask(TaskDto taskDto);

	void assignTask(TaskDto taskDto);

	void refuseTask(TaskDto taskDto);

	void closeTask(TaskDto taskDto);

	void openTask(TaskDto taskDto);
	/**
	 * 待办任务数
	 */
	Integer findUnDoSizeByUserId(Integer userId);

	Integer findFinishTaskSizeByUserId(Integer userId);
}
